import pandas as pd

# 读取Excel文件
file_path = 'stockdata.xlsx'  # 请确保文件路径正确
stock_data = pd.read_excel(file_path)

# 将日期列转换为datetime格式并提取年份
stock_data['日期'] = pd.to_datetime(stock_data['日期'])
stock_data['年份'] = stock_data['日期'].dt.year

# 按股票代码和年份分组，计算短期负债和长期负债的均值
annual_data = stock_data.groupby(['股票代码', '年份']).agg({
    '短期负债': 'mean',
    '长期负债合计': 'mean',
    '行业代码': 'first',
    '实际控制人性质': 'first',
    '资产负债率': 'mean'
}).reset_index()

# 使用均值填充缺失值，只针对数值列
annual_data = annual_data.fillna(annual_data.mean(numeric_only=True))

# 保存清洗后的数据到新的Excel文件
output_file_path = 'a2.xlsx'
annual_data.to_excel(output_file_path, index=False)

print(f'年度数据已保存到 {output_file_path}')
